1. Field of the Invention
This invention relates generally to hardware design for high density logic circuits and has particular application to code testing in design development.
2. Background
Code coverage is a computationally intense activity involved in hardware emulation used in the hardware design process.
Code coverage testing is a boon to designers because it clearly identifies portions of the design under test that have not been adequately exercised during testing. However, extraction of signals relevant to code coverage depending on the design itself to give up its hidden circuit pathways has not yielded good results. Accordingly, some way to insert circuits, i.e., instruments, to capture signals at any relevant location within the design needed to be developed. Counter to the need to insert instruments, or to instrument the design is the problems that additional circuits in the design can cause. The running of emulations with the greatly increased design size becomes an insurmountable problem when the design is large to begin with, so even though the signals could be read out from a fully instrumented design, the emulators typically were not large or fast enough to be of use for large circuit designs.
Code coverage has been available for simulation, but not emulators in the past. Users need to be able to have better and more reliable code coverage which can only be achieved in emulation where at speed and other potentially difficult conditions can be explored, unlike simulation which does not provide for any real world test conditions.